#!/bin/bash
if [ $# -ne 3 ]
then
    echo "参数个数不为3"
    echo "当使用乘法的时候，记得加入转义符号。$0 1 \* 2"
    exit 1
fi

judge_num()
{
    n=`echo $1 | sed 's/[0-9.]//g'`
    n2=`echo $1 | sed 's/[^.]//g'|wc -L`
    if [ -n "$n" ] || [ $n2 -gt 1 ]
    then
        echo "$1 数字不合法（不可以为负数）"
        exit 1
    fi
}

judge_num $1
judge_num $3


case $2 in
    +)
    echo "$1+$3"|bc
    ;;
    -)
    echo "$1-$3"|bc
    ;;
    \*)
    echo "$1*$3"|bc
    ;;
    /)
    echo "scale=2;$1/$3"|bc
    ;;
    *)
    echo "$2 不是运算符"
    ;;
esac

# 测试用例
# sh 70.sh 4 / 5 结果为: .80 显示不合格
